NT Developer Utilities:

 

DSPConverter

Utility for editing several .dsp files at the same time. This is especially useful when porting an application with a large number of project workspaces. Typically one wants to add and edit Alpha specific configurations and add and remove switches to all the project workspaces.

This utility also analyzes the binaries created and compares them to the binaries needed. It’s often the case that the binaries don’t have the same name as the workspace. It’s also quite common that third party libraries are not present. By analyzing the .dsp files you can get a quick porting assessment. There is also a feature that allows missing linked libraries to be removed from the link / compile line of a specific configuration. Using the Stubber tool to stub out the missing functions you can get the application up and running even if certain libraries are missing.

Documentation

Doc's and Binaries

Doc's Binaries and Source

 

Stubber

This tool stubs out missing function calls. If a non-critical library is linked but not available you can use this utility to create stubs of the missing function calls. The stubs can either be silent, display a warning dialog box, or add a warning to a log file. This utility works by parsing the .plg generated by the VC IDE when building and linking projects. The utility attempts to find the missing function call in header files under a given path. In most cases this is necessary for user defined data types and the like used by the function arguments.

Documentation

Doc's and Binaries

Doc's Binaries and Source

 

Version

This utility can be used to display version information of a binary or all binaries recursively in a directory. When executed with no arguments this utility will display the version of Visual C++ (front end and backend compiler), The version of Internet Explorer (and whether or not Active Desktop is running) and the version of fx!32 and whether or not its running. The intent of the utility is to provide quick information to services / installs critical to the build environment as well as providing examples and API’s or finding file version / device driver version / device driver state / retrieving relevant registry entries.

Documentation

Doc's and Binaries

Doc's Binaries and Source

 

Munger

If you run into something that looks like a compiler / linker error and want to send it out as a reproducer to the compiler group you may have to ‘hide’ all the proprietary information first. This utility will take a preprocessed file and replace all names and strings with codes of exactly the same length. The utility reads in a text file of key words not to replace first (such as reserved key words and simple types of c / c++).

Documentation

Doc's and Binaries

Doc's Binaries and Source

 

NTFloat

This utility is a next generation version of Dave Hunters Ntflop. Ntflop is no longer supported and does not work with well with VC6. Besides catching and handling floating point errors (recording the location the exception occurred but allowing execution to continue) this utility also retrieves the symbol and source file / line number the error occurred as well as the callstack. The utility only loads symbols from the libraries / exe’s if it needs them. This will allow developers and QA to run an app without having to restart it every time when it crashes because of a float exception. It also dramatically reduces load time and debug time of applications with large numbers of DLL’s and symbols.

Documentation

Doc's and Binaries

Doc's Binaries and Source

 

DiskIO

Simple utility to measure disk throughput performance. Allows user to specify which drive and what size of memory chunks to read / write. It also handles a few IO sensitive witches such as DMA and write through.

Documentation

Doc's and Binaries

Doc's Binaries and Source